package com.gxa.learning.pc.service;

import com.github.pagehelper.PageInfo;
import com.gxa.learning.core.exception.BusinessException;
import com.gxa.learning.core.pojo.LevelManager;
import com.gxa.learning.core.pojo.TypeLevelManagerVO;
import com.gxa.learning.core.service.BaseService;
import org.springframework.web.multipart.MultipartFile;

/**
 * @author lijianmin
 * @date 2021/12/03  15:43:36
 */
public interface LevelManagerService extends BaseService<LevelManager> {
    /**
     * 根据条件搜索的方法(如果条件为空 则为全查询, 如果不传分页条件,则默认为第1页10条数据)
     *
     * @param typeName         类别名称
     * @param level            类别等级
     * @param state            每页数据量
     * @param uploadPeopleName 上传人
     * @return 返回数据以及信息
     */
    PageInfo<TypeLevelManagerVO> selectByLike(String typeName, String level, Integer state, String uploadPeopleName, Integer page, Integer size) throws BusinessException;

    /**
     * 根据类别id、等级、状态查询是否存在满足条件的数据
     *
     * @param levelManager 条件
     * @throws BusinessException 操作中产生的异常
     */
    void selectExist(LevelManager levelManager) throws BusinessException;

    /**
     * 批量导入等级的方法
     *
     * @param multipartFile 文件对象
     * @throws Exception 操作中产生的异常
     */
    void batchAdd(MultipartFile multipartFile) throws Exception;
}
